package com.admin.common.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 数据权限枚举
 *
 * @author sq-lan
 */
@Getter
@AllArgsConstructor
public enum DataScopeEnum {

    /**
     * 全部
     */
    ALL(99, "全部"),

    /**
     * 本部门和子部门
     */
    DEPT_AND_CHILD(3, "本级及以下"),

    /**
     * 本部门
     */
    DEPT(2, "本级"),

    /**
     * 自己
     */
    SELF(1, "仅本人"),

    /**
     * 定制
     */
    CUSTOMIZE(9, "自定义"),
    ;

    private final Integer value;
    private final String label;

    public static DataScopeEnum getByValue(int val) {
        for (DataScopeEnum dataScopeEnum : DataScopeEnum.values()) {
            if (dataScopeEnum.getValue() == val) {
                return dataScopeEnum;
            }
        }
        return null;
    }

    public static String getLabelByValue(int val) {
        DataScopeEnum anEnum = getByValue(val);
        return anEnum != null ? anEnum.getLabel() : "";
    }

}
